var e = require, t = module, n = exports;

Object.defineProperty(n, "__esModule", {
    value: !0
});

var o = function() {
    function t(t) {
        this.target = null, this.key = null, this.type = null, this.callback = null, this.complete = null, 
        this.next = null, this.key = t.key, this.callback = t.callback, t.target && (this.target = t.target), 
        t.type && (this.type = t.type), t.complete && (this.complete = t.complete), t.next && (this.next = t.next);
    }
    return t.prototype.run = function() {
        cc.log("gide " + this.key + " run", this.target), this.target && this.type && this.target.on(this.type, this.finish, this), 
        this.callback && this.callback();
    }, t.prototype.finish = function() {
        cc.log("gide " + this.key + " finish", this.target), this.target && this.type && this.target.off(this.type, this.finish, this), 
        this.complete && this.complete(), this.next && this.next.run();
    }, t;
}();

n.default = o;